Various mechanisms for providing minimum quality of service levels with respect to Internet protocol packet flows have been developed. For example, the resource reservation protocol (RSVP) can be used to reserve bandwidth and nominate the desired quality of service (QoS) treatment for a particular network packet flow between two or more network endpoints. Use of RSVP involves sending data packets across a communication network to reserve resources at points along a path or paths that will be used in connection with a communication channel. In particular, the IP addresses of network nodes or routers along the path are collected, and resources on those nodes reserved.
The establishment of protected or reserved network resources can fail for various reasons. For example, the requested resources may not be available. Determining whether requested bandwidth can be reserved at a desired QoS treatment requires sending an RSVP path packet, receiving a RSVP reservation packet, and sending an RSVP confirmation packet. Accordingly, making a determination as to whether requested resources are available takes time.
In connection with reserved network resources, a network packet flow using such resources must usually be established separately. For example, a connection may be established according to the procedures of a protocol such as the transmission control protocol (TCP) or the session initiation protocol (SIP). In general, the establishment of a connection according to such a protocol requires an exchange of messages between endpoints of the communication channel. For various reasons, a requested communication channel may be unavailable.
Accordingly, the establishment of a communication channel using protected network resources requires both the reservation of resources and the establishment of a communication channel. If the steps of obtaining resource reservations is performed in series with the steps of establishing a communication channel to utilize the reserved resources, the process is approximately twice as time consuming. As an alternative, the steps of making resource reservations and establishing a communication channel can be performed in parallel or interleaved with one another. However, even if such steps are performed in parallel, the use of reserved network resources in connection with a communication channel involves increased setup times as compared to a communication channel established without a reservation of network resources. Also, data packet traffic on the network is increased.
In addition, existing methods of establishing communication channels using reserved resources are inefficient. In particular, if one or the other of a requested reservation or communication channel is established, but the other fails, the established reservation or channel must be torn down, and the process must be restarted.